/*
	Header file that contains all the function prototypes for the
	 system functions
*/
#ifndef INCLUSION_GUARD_SYSTEM_H
#define INCLUSION_GUARD_SYSTEM_H

//#define BUTTON          PORTAbits.RA5

#define DELAY1          200
#define DELAY2          50
#define DELAY3          5
#define DELAY4          1

#define DELAY_COUNT1    10
#define DELAY_COUNT2    50
#define DELAY_COUNT3    75

#define FILTER_CHANGE_COUNT 1080
//#define FILTER_CHANGE_COUNT 50

#define MAX_RUNTIME         12


void EEPROM_write(unsigned char address, unsigned char data);
void EEPROM_write_with_check(unsigned char address, unsigned char data);
unsigned char EEPROM_read(unsigned char address);
void EEPROM_value_check(unsigned char address, unsigned char value);

void cycle_start_check(void);
void button_check(void);

void update_clock(unsigned char draw_frame);
void initialize_clock(void);
void parse_time(void);
void parse_time_minutes(void);
void time_set(void);
void hour_format_selection(void);
void filter_change_reminder(void);
void reset_filter_counter(void);

void set_runtime_mins(void);
void update_runtime_mins(void);

void set_start_time(void);
void parse_start_time_minutes(void);
void update_start_time(void);



#endif
